//***********************************************************************
//	File:		MechaTrooper.cpp
//	Author:		
//	Course:		SGP 1405
//	Purpose:	
//***********************************************************************
//***********************************************************************
//	Purposfully left blank for all comments regarding this file 
//	
//	
//	
//***********************************************************************



#include "MechaTrooper.h"
#include "../SGD Wrappers/SGD_Event.h"

MechaTrooper::MechaTrooper(float posX, float posY)
{
	SetAcceleration({ 0 , 0 }); 
	SetAttackRange(600); 
	SetConfuseCDL(1); 
	SetConfuseTimer(0); 
	SetDynamicFrictionCoefficient(.6f); 
	SetGunCDL(.25f); 
	SetGunProjectileType(ENT_BULLET); 
	SetGunTimer(0); 
	SetHealth(5000); 
	//SetImage(); 
	SetKnockbackCDL(2); 
	SetKnockBackTimer(0);
	SetMass(300); 
	SetMaxHealth(500);
	SetMaxSpeed(100); 
	SetMeleeCDL(.25f); 
	SetMeleeDamage(15); 
	SetMeleeTimer(0); 
	SetMissileCDL(10); 
	SetMissileTimer(0); 
	SetMissileType(ENT_HEATSEEKER); 
	SetPassable(false);
	SetPosition(SGD::Point{ posX, posY }); 
	SetRootCDL(2); 
	SetRootTimer(0); 
	SetRotation(0);
	SetSize(SGD::Size{ 128, 128 }); 
	SetSpeed(0);
	SetStaticFrictionCoefficient(.8f); 
	//SetTakeDamage(); particle emitter
	SetTarget(nullptr); 
	SetValue(ENT_MECHATROOPER);
	SetVelocity(SGD::Vector{ 0, -1 }); 

}

MechaTrooper::~MechaTrooper()
{
	int * points = new int(100);
	SGD::Event * pEvent = new SGD::Event ( "INCREASE_SCORE", points, nullptr);
	pEvent->QueueEvent(nullptr);
	pEvent = nullptr;
}

void MechaTrooper::Update(float dt)
{
	//Last line of function
	Entity::Update(dt); 
}

void MechaTrooper::Render()
{

}

void MechaTrooper::HandleCollision(const IEntity* pOther)
{

}

void MechaTrooper::HandleEvent()
{

}

SGD::Rectangle MechaTrooper::GetRect() const
{
	return SGD::Rectangle{}; 
}

void MechaTrooper::ModifyHealth(float hpAmount)
{

}

void MechaTrooper::ApplyFriction(float dt)
{

}

void MechaTrooper::Attack(float dt)
{

}

void MechaTrooper::Move(void)
{

}
